查看原文
其他

【RT-Thread开发之路】使用at_device软件包通过ESP8266连接到网络

Willliam_william RTThread物联网操作系统 2021-01-31
原文作者:Willliam_william https://blog.csdn.net/qq_38113006?t=1


硬件基于BearPi-STM32L431开发板,开发环境选择RT-Thread Studio,通信模组使用ESP8266。

一、硬件连接

将ESP8266模组安装在无线扩展接口上,然后将拨码开关拨向【AT-MCU】端:

二、添加软件包

1、开启libc组件
打开【RT-Thread Settings】,点击【libc】将其开启

2、添加at_device软件包
点击添加软件包,搜索at_device,然后点击添加:

添加好后,右键单击进入该软件包配置页面:

通过查看原理图可以知道,ESP8266使用连接到STM32的串口是LPUART1,所以配置如下:

接下来保存【RT-Thread Settings】,让这些配置生效。

三、开启LPUART1

因为过程中LPUART1默认是没有开启的,所以我们打开board.h,安装其提示添加:

首先,添加LPUART1的宏定义:

1#define BSP_USING_LPUART1

下一步就是修改其引脚配置了,通过查看原理图,得知其对应关系LPUART1_RX -> PC0LPUART1_TX -> PC1,修改如下:

然后编译,下载,查看串口输出,可以看到,提示串口缓冲去不够大

我们将其加大即可:

再次编译烧录,发现其不支持AT+CIPDNS_CUR?指令,这是因为ESP8266的固件版本太低的原因。

四、更新ESP8266的AT固件

将拨码选择开关拨到【AT-PC】,使用AT+GMR指令查看一下当前AT固件版本,可以看到,AT版本为1.3.0.0

使用AT+RST指令将我们的模组复位,查看一下模组的Flash信息,可以看到,为32Mbit(512KB+512KB)

然后到乐鑫的官网去下载更新版本的AT固件,https://www.espressif.com/zh-hans/support/download/at,要注意,有些版本只支持(1024KB+1024KB),这里我选择V1.6.2版本!

下载好后,打开压缩包,按照README.md的说明将其中的32Mbit(512KB+512KB)固件烧录进去:



因为模组的IO0引脚并没有被接出,所以我们需要使用飞线将其拉低


烧录完成后,查阅一下其AT固件版本,可以看到,成功更新到1.6.2版本

使用AT+CIPDNS_CUR?命令测试一下,可以看到,已经支持这个指令了



五、再次启动测试

将拨码选择开关重新拨回【AT-MCU】,复位一下开发板,可以看到,已经连接成功了

然后我们使用ifconfig命令查看一下网络信息


使用ping www.baidu.com测试一下是否可以连接外网

测试成功!


RT-Thread论坛原创征稿活动:与RT-Thread相关即可,内容题材不限。参与即有机会赢得,RT-Thread T恤、笔记本、技术书籍、京东卡、RT-Thread能力认证优惠券等  


马上参与
参与入口https://www.rt-thread.org/qa/thread-424281-1-1.html

你可以添加微信17775982065为好友,注明:公司+姓名,拉进 RT-Thread 官方微信交流群!



RT-Thread


让物联网终端的开发变得简单、快速,芯片的价值得到最大化发挥。Apache2.0协议,可免费在商业产品中使用,不需要公布源码,无潜在商业风险。





长按二维码,关注我们


点击阅读原文,进入RT-Thread论坛你点的每个“在看”,我都认真当成了喜欢

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存